package main

import "fmt"

//定义一个公共的结构体
type Ren struct {
	name string
	age int
	sex byte
}

//给公共结构体绑定一个函数
func (tmp Ren) Printinfo()  {
	fmt.Printf("name=%s\tage=%d\tsex=%c\n", tmp.name, tmp.age, tmp.sex)
}

//定义一个子结构体
type Stu struct {
	Ren //匿名字段，没有数据类型的
	id int
	addr string
}

func main()  {
	//初始化一个Stu的结构体
	a := Stu{Ren{"make", 19, 'm'}, 23, "bj"}
	//a是Stu结构体，Stu是和Ren是父子关系，Stu里引入了Ren的成员和方法，所以可以直接使用Ren里的Printinfo()函数，这叫做方法继承
	a.Printinfo()
}
